
////匿名内部类
//public class TestDemo4 {
//    public static void main(String[] args) {
//        Thread t = new Thread() {
//            @Override
//            public void run() {
//                while(true) {
//                    System.out.println("hello thread");
//                    try {
//                        Thread.sleep(1000);
//                    } catch (InterruptedException e) {
//                        throw new RuntimeException(e);
//                    }
//                }
//            }
//        };
//
//        t.start();
//
//        while(true) {
//            System.out.println("hello main");
//            try {
//                Thread.sleep(1000);
//            }catch (InterruptedException e) {
//                e.printStackTrace();
//            }
//        }
//    }
//}

// 实现Runable,重写run ,匿名内部类
//public class TestDemo4 {
//    public static void main(String[] args) {
//        Thread t = new Thread(new Runnable() {
//            @Override
//            public void run() {
//                while(true) {
//                    System.out.println("hello Runable");
//                    try {
//                        Thread.sleep(1000);
//                    }catch (InterruptedException e) {
//                        e.printStackTrace();
//                    }
//                }
//            }
//        });
//
//        t.start();
//
//        while(true) {
//            System.out.println("hello main");
//            try {
//                Thread.sleep(1000);
//            }catch (InterruptedException e) {
//                e.printStackTrace();
//            }
//        }
//    }
//}

//// lambda 表达式
//public class TestDemo4 {
//
//    public static void main(String[] args) {
//        Thread t = new Thread(() ->{
//            while(true) {
//                System.out.println("hello thread");
//                try {
//                    Thread.sleep(1000);
//                }catch (InterruptedException e) {
//                    e.printStackTrace();
//                }
//            }
//        });
//        //在 start 之前,设置线程为后台线程(不能在 start 之后设置)
//        t.setDaemon(true);
//        t.start();
//
//        while(true) {
//            System.out.println("hello main");
//            try {
//                Thread.sleep(1000);
//            }catch (InterruptedException e) {
//                e.printStackTrace();
//            }
//        }
//    }
//}

public class TestDemo4 {
    public static void main(String[] args) throws InterruptedException{
        Thread t = new Thread(()->{
            try {
                Thread.sleep(1000);
            }catch (InterruptedException e) {
                e.printStackTrace();
            }

        });

        System.out.println("start之前:"+t.isAlive());
        t.start();
        System.out.println("start之后:"+t.isAlive());
        Thread.sleep(2200);

        System.out.println("t 结束之后:" + t.isAlive());
    }
}